查看原文
其他

Spring Boot+MyBatis Plus+JWT 问卷系统!开源!

Guide JavaGuide 2022-10-28

《Java 面试指北》来啦!这是一份教你如何更高效地准备面试的小册,涵盖常见八股文(系统设计、常见框架、分布式、高并发 ......)、优质面经等内容。

你好呀,我是 Guide!这里是 JavaGuide 的「优质开源项目推荐」第 8 期,每一期我都会精选 5 个高质量的 Java 开源项目。

时间过的真快,不知不觉「优质开源项目推荐」系列已经持续半年了,也算是兑现了当初立下的 Flag。

前 7 期的「优质开源项目推荐」传送门:

SurveyKing:更专业的调查问卷系统

SurveyKing(卷王) 是一个开源免费、功能强大、稳定的调查问卷系统,安装使用非常简单,支持多种数据库,内置 20 多种题型, 支持多人协作管理问卷。

下图是 SurveyKing 与其他常见的问卷产品之间的对比:

SurveyKing 技术栈也是主流技术:

  • 后端:基于 Spring Boot +MyBatis Plus+ FastExcel[1] + Spring Security + JWT+ Thumbnailator+ Caffeine(内存缓存)+ MapStruct (Java Bean 映射工具)。
  • 前端:代码还未开源,技术栈未知,待项目稳定之后也会有开源出来。

FastExcel 是一个用于快速读取 Excel 文件的工具库,Thumbnailator 是一个图像处理工具库,我在「第五期优质开源项目推荐」中推荐过这个项目。

SurveyKing 使用效果预览:

  • Github 地址:https://github.com/javahuang/surveyking
  • 官网:https://surveyking.cn/
  • 在线演示:https://s.surveyking.cn/user/login

zfoo:极致性能 Java 框架

zfoo 是一款个人开发的追求极致性能的 Java 框架,既可以用来做网站服务器框架,也可以用来做游戏服务器框架。

tank-game-server[2](坦克游戏,新手友好,难度 2 星) 和 zapp[3] (图片分享聊天网站,难度 5 星)是使用 zfoo 框架开发的两个实际项目案例。

Github 地址:https://github.com/zfoo-project/zfoo 。

junit5:Java 测试框架

junit4 是最常用的单元测试框架,写过单元测试的肯定都用过它。

junit5 是 junit4 的下一个版本,由三个模块构成:JUnit Platform+ JUnit Jupiter+ JUnit Vintage3。相比较与 junit4,junit5 有更多易用的新特性比如嵌套单元测试、Lambda 支持、重复测试。

// 指定异常抛出测试
@Test
void assertThrowsException() {
    String str = null;
    assertThrows(IllegalArgumentException.class, () -> {
      Integer.valueOf(str);
    });
}
  • Github 地址:https://github.com/junit-team/junit5
  • 官方文档:https://junit.org/junit5/docs/current/user-guide/

Sa-Token:功能全面的 Java 权限认证框架

Sa-Token 是一款功能非常全面的 Java 权限认证框架,支持登录认证、权限认证、踢人下线,账号封禁、单点登录、OAuth2.0 认证等功能,开箱即用!

下面是部分使用 Sa-Token 进行权限认证的项目:

  • EasyAdmin [4]:一个基于 SpringBoot2 + Sa-Token + Mybatis-Plus + Snakerflow + Layui 的后台管理系统,灵活多变可前后端分离,也可单体,内置代码生成器、权限管理、工作流引擎等。
  • Sa-Plus [5]:一个基于 SpringBoot 架构的快速开发框架,内置代码生成器。
  • RuoYi-Vue-Plus[6] : 重写 RuoYi-Vue 针对 分布式集群 场景全方位升级(不兼容原框架)。
  • ......

值得提一嘴的是,Sa-Token 这个项目诞生来源于工作中的需求,这个项目的作者公司的项目需要用到踢人下线、账号封禁等功能,他在找了一圈之后发现现有的权限认证框架第一没有现成的功能,于是他就自己写了一个框架。不愧是大佬!

  • Github 地址:https://github.com/dromara/Sa-Token
  • 官网:https://sa-token.dev33.cn/index.html

spring-boot-tutorial:Spring Boot 教程

spring-boot-tutoria 这个项目包含了 100 + Spring Boot 文章、教程、视频教程、项目、指南、源代码示例......。

视频教程:

文章:

Github 地址:https://github.com/RameshMF/spring-boot-tutorial

参考资料

[1]

FastExcel: https://github.com/dhatim/fastexcel

[2]

tank-game-server: https://github.com/zfoo-project/tank-game-server

[3]

zapp: https://github.com/zfoo-project/zapp

[4]

EasyAdmin : https://gitee.com/lakernote/easy-admin

[5]

Sa-Plus : https://gitee.com/click33/sa-plus

[6]

RuoYi-Vue-Plus: https://gitee.com/JavaLionLi/RuoYi-Vue-Plus



··········  END  ··············

欢迎加入我的知识星球获取更多面试干货,《Java 面试指北》持续更新完善中!

近期文章精选 :


如果本文对你有帮助的话,欢迎点赞&在看&分享,这对我继续分享&创作优质文章非常重要。感谢🙏🏻

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存